﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; 
using Montana.Entidades;
using Montana.Reportes;
using Montana.Negocio;
using AMS.Profile;

namespace Montana
{
    public partial class frmPrincipalOriginal : Form
    {
        public frmPrincipalOriginal()
        {
            InitializeComponent();
        }

        private void frmPrincipal_Load(object sender, EventArgs e)
        {           
            this.Text = Sistema.Nombre;
            lblNombre.Text = Sistema.Nombre;
            lblVersion.Text = Sistema.Version;
        }

        private void btnSalir_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnCliente_Click(object sender, EventArgs e)
        {
            frmCliente frm = new frmCliente();
            frm.Show();
        }

        private void btnProducto_Click(object sender, EventArgs e)
        {
            frmProducto frm = new frmProducto();
            frm.Show();
        }

        private void MoverFormulario(MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {

            }
        }

        private void rectangleShape1_MouseDown(object sender, MouseEventArgs e)
        {
            MoverFormulario(e);
        }

        private void lblNombre_MouseDown(object sender, MouseEventArgs e)
        {
            MoverFormulario(e);
        }

        private void lblVersion_MouseDown(object sender, MouseEventArgs e)
        {
            MoverFormulario(e);
        }

        private void frmPrincipal_KeyDown(object sender, KeyEventArgs e)
        {
            switch (e.KeyCode)
            {
                case Keys.Escape:
                    btnSalir_Click(this, null);
                    break;
                case Keys.D1:
                    btnFactura_Click(this, null);
                    break;
                case Keys.D2:
                    btnCliente_Click(this, null);
                    break;
                case Keys.D3:
                    btnProducto_Click(this, null);
                    break;
                case Keys.D4:
                    btnListaPrecio_Click(this, null);
                    break;
                case Keys.D5:
                    btnLocalidad_Click(this, null);
                    break;
                case Keys.D6:
                    btnCuentaCorriente_Click(this, null);
                    break;
                case Keys.D7:
                    btnRecibo_Click(this, null);
                    break;
            }
        }

        private void btnFactura_Click(object sender, EventArgs e)
        {
            frmFactura frm = new frmFactura();
            frm.Show();
        }

        private void frmPrincipal_MouseDown(object sender, MouseEventArgs e)
        {            
            MoverFormulario(e);                        
        }

        private void btnListaPrecio_Click(object sender, EventArgs e)
        {
            frmListaPrecio frm = new frmListaPrecio();
            frm.Show();
        }



        private void button1_Click(object sender, EventArgs e)
        {
            GuardarAislacion("A17-1", "BEDFORD R17", 19, 14, 1);
            GuardarAislacion("A17-2", "FORD TRANSIT R17", 17, 14, 1);
            GuardarAislacion("A19-1", "FIAT 147 R19", 17, 14, 1);
            GuardarAislacion("A19-2", "PEUGEOT 505 R19", 17, 14, 1);
            GuardarAislacion("A19-3", "DUCATO - VALEO R19", 17, 14, 1);
            GuardarAislacion("A21-1", "BOSH BRASILERA R21", 19, 14, 1);
            GuardarAislacion("A21-2", "NASHVILLE R21", 19, 14, 1);
            GuardarAislacion("A21-3", "SUPER TORQUIN R21", 19, 14, 1);
            GuardarAislacion("A23-1", "CUMMINS R23", 17, 14, 1);
            GuardarAislacion("A23-2", "FIAT DUNA - PALIO R23", 17, 14, 1);
            GuardarAislacion("A23-3", "FORD V8 R23", 19, 14, 1);
            GuardarAislacion("A23-4", "FIAT 1600 R23", 19, 14, 1);
            GuardarAislacion("A23-5", "TOYOTA HILUX R23", 17, 14, 1);
            GuardarAislacion("A23-6", "WAPSA R23", 19, 14, 1);
            GuardarAislacion("A25-1", "M. BENZ SPRINTER R25", 17, 14, 1);
            GuardarAislacion("A25-2", "PEUGEOT BOXER R25", 17, 14, 1);
            GuardarAislacion("A25-3", "CHEVROLET 55 R25", 19, 14, 1);
            GuardarAislacion("A25-4", "JOHN DEER 730 R25", 27, 14, 1);
            GuardarAislacion("A25-5", "DELCO REMY - FORD CARGO R25", 27, 14, 1);
            GuardarAislacion("A25-6", "FKB R25", 27, 14, 1);
            GuardarAislacion("A27-1", "DODGE POLARA R27", 19, 14, 1);
            GuardarAislacion("A28-1", "MOTORCRAFT R28", 17, 14, 1);
            GuardarAislacion("A29-1", "RENAULT 19 -12 R29", 17, 14, 1);
            GuardarAislacion("A29-2", "PEUGEOT R29", 17, 14, 1);
            GuardarAislacion("A29-3", "POINTER R29", 17, 14, 1);
            GuardarAislacion("A29-4", "TAUNUS R29", 17, 14, 1);
            GuardarAislacion("A29-5", "FKB R29", 27, 14, 1);
            GuardarAislacion("A33-1", "DAIHATSU - CHEVETTE R33", 18, 14, 1);
            GuardarAislacion("A33-2", "FIAT IVECO R33", 27, 14, 1);
            GuardarAislacion("A33-3", "FIAT 619 R33", 27, 14, 1);
            GuardarAislacion("A37-1", "BNG R37", 30, 14, 1);


            GuardarOtroProducto("04-2038", "BARNIZ 2038 4 LITROS", 95, 15);
            GuardarOtroProducto("04-5050", "BARNIZ 5050 4 LITROS", 65, 15);
            GuardarOtroProducto("04-6060", "BARNIZ 6060 4 LITROS", 65, 15);
            GuardarOtroProducto("04-ROJO", "BARNIZ ROJO 4 LITROS", 120, 15);
            GuardarOtroProducto("18-5050", "BARNIZ 5050 18 LITROS", 235, 15);
            GuardarOtroProducto("18-6060", "BARNIZ 6060 18 LITROS", 235, 15);
            GuardarOtroProducto("01-S15", "DILUYENTE S15 1 LITRO", 18, 15);
            GuardarOtroProducto("04-S15", "DILUYENTE S15 4 LITROS", 61, 15);
            GuardarOtroProducto("01-R1", "RX1", 48, 15);
            GuardarOtroProducto("01-R2", "RX2", 48, 15);


            GuardarOtroProducto("DEC500", "DECAPANTE 1/2 LITRO", 12, 16);
            GuardarOtroProducto("DEC1000", "DECAPANTE 1 LITRO", 20, 16);


            GuardarOtroProducto("MAD3", "TRABA DE MADERA Nº 3", 18, 17);
            GuardarOtroProducto("MAD4", "TRABA DE MADERA Nº 4", 20, 17);
            GuardarOtroProducto("MAD5", "TRABA DE MADERA Nº 5", 24, 17);
            GuardarOtroProducto("MAD6", "TRABA DE MADERA Nº 6", 28, 17);


            GuardarOtroProducto("SPAG1", "SPAGUETTI Nº 1 X 100 UNIT.", 26, 18);
            GuardarOtroProducto("SPAG2", "SPAGUETTI Nº 2 X 100 UNIT.", 37, 18);
            GuardarOtroProducto("SPAG3", "SPAGUETTI Nº 3 X 100 UNIT.", 52, 18);
            GuardarOtroProducto("SPAG4", "SPAGUETTI Nº 4 X 100 UNIT.", 74, 18);
            GuardarOtroProducto("SPAG5", "SPAGUETTI Nº 5 X 100 UNIT.", 95, 18);
            GuardarOtroProducto("SPAG2. LV", "SPAGUETTI Nº 2 X 100 UNIT. DE VIDRIO", 100, 18);
            GuardarOtroProducto("SPAG3. LV", "SPAGUETTI Nº 3 X 100 UNIT. DE VIDRIO", 133, 18);


            GuardarOtroProducto("CLP8R", "COLECTOR LIMPIA PARABRISAS 8 R", 8, 19);
            GuardarOtroProducto("CLP10R", "COLECTOR LIMPIA PARABRISAS 10 R", 8, 19);
            GuardarOtroProducto("CLP12R", "COLECTOR LIMPIA PARABRISAS 12 R", 8, 19);


            GuardarOtroProducto("EST33", "ESTAÑO 33 %", 66, 20);


            GuardarOtroProducto("PRES018", "PRESPAN 0,18", 15, 21);
            GuardarOtroProducto("PRES025", "PRESPAN 0,25", 15, 21);
            GuardarOtroProducto("PRES050", "PRESPAN 0,50", 15, 21);


            GuardarOtroProducto("MAILAN015", "MAILAN 0,15", 40, 22);
            GuardarOtroProducto("MAILAN025", "MAILAN 0,25", 40, 22);
            GuardarOtroProducto("MEC", "MECHA", 22, 23);
            GuardarOtroProducto("ESM050", "ALAMBRE ESMALTADO 0,50", 48, 24);
            GuardarOtroProducto("ESM060", "ALAMBRE ESMALTADO 0,60", 48, 24);
            GuardarOtroProducto("ESM070", "ALAMBRE ESMALTADO 0,70", 45, 24);
            GuardarOtroProducto("ESM075", "ALAMBRE ESMALTADO 0,75", 45, 24);
            GuardarOtroProducto("ESM080", "ALAMBRE ESMALTADO 0,80", 45, 24);
            GuardarOtroProducto("ESM090", "ALAMBRE ESMALTADO 0,90", 45, 24);
            GuardarOtroProducto("ESM100", "ALAMBRE ESMALTADO 1,00", 45, 24);
            GuardarOtroProducto("ESM110", "ALAMBRE ESMALTADO 1,10", 43, 24);
            GuardarOtroProducto("ESM120", "ALAMBRE ESMALTADO 1,20", 43, 24);
            GuardarOtroProducto("ESM130", "ALAMBRE ESMALTADO 1,30", 43, 24);
            GuardarOtroProducto("ESM140", "ALAMBRE ESMALTADO 1,40", 43, 24);
            GuardarOtroProducto("ESM150", "ALAMBRE ESMALTADO 1,50", 43, 24);
            GuardarOtroProducto("ESM160", "ALAMBRE ESMALTADO 1,60", 43, 24);
            GuardarOtroProducto("ESM170", "ALAMBRE ESMALTADO 1,70", 43, 24);
            GuardarOtroProducto("ESM180", "ALAMBRE ESMALTADO 1,80", 43, 24);
            GuardarOtroProducto("ESM190", "ALAMBRE ESMALTADO 1,90", 43, 24);
            GuardarOtroProducto("ESM200", "ALAMBRE ESMALTADO 2,00", 43, 24);
            GuardarOtroProducto("ESM210", "ALAMBRE ESMALTADO 2,10", 43, 24);
            GuardarOtroProducto("ESM220", "ALAMBRE ESMALTADO 2,20", 43, 24);
            GuardarOtroProducto("ESM230", "ALAMBRE ESMALTADO 2,30", 43, 24);

            GuardarAislacion("A17-1", "BEDFORD R17", 19, 14, 1);
            GuardarAislacion("A17-2", "FORD TRANSIT R17", 17, 14, 1);
            GuardarAislacion("A19-1", "FIAT 147 R19", 17, 14, 1);
            GuardarAislacion("A19-2", "PEUGEOT 505 R19", 17, 14, 1);
            GuardarAislacion("A19-3", "DUCATO - VALEO R19", 17, 14, 1);
            GuardarAislacion("A21-1", "BOSH BRASILERA R21", 19, 14, 1);
            GuardarAislacion("A21-2", "NASHVILLE R21", 19, 14, 1);
            GuardarAislacion("A21-3", "SUPER TORQUIN R21", 19, 14, 1);
            GuardarAislacion("A23-1", "CUMMINS R23", 17, 14, 1);
            GuardarAislacion("A23-2", "FIAT DUNA - PALIO R23", 17, 14, 1);
            GuardarAislacion("A23-3", "FORD V8 R23", 19, 14, 1);
            GuardarAislacion("A23-4", "FIAT 1600 R23", 19, 14, 1);
            GuardarAislacion("A23-5", "TOYOTA HILUX R23", 17, 14, 1);
            GuardarAislacion("A23-6", "WAPSA R23", 19, 14, 1);
            GuardarAislacion("A25-1", "M. BENZ SPRINTER R25", 17, 14, 1);
            GuardarAislacion("A25-2", "PEUGEOT BOXER R25", 17, 14, 1);
            GuardarAislacion("A25-3", "CHEVROLET 55 R25", 19, 14, 1);
            GuardarAislacion("A25-4", "JOHN DEER 730 R25", 27, 14, 1);
            GuardarAislacion("A25-5", "DELCO REMY - FORD CARGO R25", 27, 14, 1);
            GuardarAislacion("A25-6", "FKB R25", 27, 14, 1);
            GuardarAislacion("A27-1", "DODGE POLARA R27", 19, 14, 1);
            GuardarAislacion("A28-1", "MOTORCRAFT R28", 17, 14, 1);
            GuardarAislacion("A29-1", "RENAULT 19 -12 R29", 17, 14, 1);
            GuardarAislacion("A29-2", "PEUGEOT R29", 17, 14, 1);
            GuardarAislacion("A29-3", "POINTER R29", 17, 14, 1);
            GuardarAislacion("A29-4", "TAUNUS R29", 17, 14, 1);
            GuardarAislacion("A29-5", "FKB R29", 27, 14, 1);
            GuardarAislacion("A33-1", "DAIHATSU - CHEVETTE R33", 18, 14, 1);
            GuardarAislacion("A33-2", "FIAT IVECO R33", 27, 14, 1);
            GuardarAislacion("A33-3", "FIAT 619 R33", 27, 14, 1);
            GuardarAislacion("A37-1", "BNG R37", 30, 14, 1);
            

            MessageBox.Show("Termino");
        }

        private void GuardarOtroProducto(string codigo, string descripcion, decimal precio, int idFamiliaProducto)
        {
            Producto productoX = new Producto();

            productoX.Codigo = codigo;
            productoX.Descripcion = descripcion;
            productoX.Preciooriginal = precio;
            productoX.IDFamiliaproducto = idFamiliaProducto;
            productoX.IDUnidad = 1;
            productoX.Nombre = descripcion;

            productoX.Nuevo();

        }

        private void GuardarAislacion(string codigo, string descripcion, decimal precio, int idFamiliaProducto, int idUnidad) 
        {
            try
            {
                Producto productoX = new Producto();
                productoX.Codigo = codigo;
                productoX.Descripcion = descripcion;
                productoX.Preciooriginal = precio;
                productoX.IDFamiliaproducto = idFamiliaProducto;
                productoX.IDUnidad = idUnidad;
                productoX.Nombre = descripcion;

                productoX.Nuevo();
            }
            catch (Exception)
            {                                
            }
        }

        private void btnLocalidad_Click(object sender, EventArgs e)
        {
            frmLocalidad frm = new frmLocalidad();
            frm.Show();
        }

        private void btnCuentaCorriente_Click(object sender, EventArgs e)
        {
            frmCuentaCorriente f = new frmCuentaCorriente();
            f.Show();
        }

        private void btnRecibo_Click(object sender, EventArgs e)
        {
            frmRecibo frm = new frmRecibo();
            frm.Show();
        }

        private void btnActualizar_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("¿Actualizar precios?", "Sistema de Facturación", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                return;

           // if (MessageBox.Show("???", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
            //    return;

            this.Cursor = Cursors.WaitCursor;

            AdmProductos.ActualizarProductos();

            this.Cursor = Cursors.Default;

            MessageBox.Show("Actualización terminada", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
    }
}
